﻿using Microsoft.Windows.Themes;
using System.Collections.ObjectModel;
using Windows_AI_Assistant.Helpers;
using Wpf.Ui.Appearance;
using Wpf.Ui.Controls;

namespace Windows_AI_Assistant.ViewModels.Windows
{
    public partial class MainWindowViewModel : ObservableObject
    {

        [ObservableProperty]
        private string _applicationTitle = "WPF UI - Windows AI Assistant";

        [ObservableProperty]
        private ObservableCollection<object> _menuItems = new()
        {
            new NavigationViewItem()
            {
                Content = "Ask AI",
                Icon = new SymbolIcon { Symbol = SymbolRegular.Chat24 },
                TargetPageType = typeof(Views.Pages.AiPage)
            },
            new NavigationViewItem()
            {
                Content = "API Settings",
                Icon = new SymbolIcon { Symbol = SymbolRegular.MentionBrackets20 },
                TargetPageType = typeof(Views.Pages.DashboardPage)
            },
            new NavigationViewItem()
            {
                Content = "Enroll Voice",
                Icon = new SymbolIcon { Symbol = SymbolRegular.SlideMicrophone24 },
                TargetPageType = typeof(Views.Pages.EnrollPage)
            },
            new NavigationViewItem()
            {
                Content = "History Data",
                Icon = new SymbolIcon { Symbol = SymbolRegular.DataHistogram24 },
                TargetPageType = typeof(Views.Pages.DataPage)
            }
        };

        [ObservableProperty]
        private ObservableCollection<object> _footerMenuItems = new()
        {
            new NavigationViewItem()
            {
                Content = "Settings",
                Icon = new SymbolIcon { Symbol = SymbolRegular.Settings24 },
                TargetPageType = typeof(Views.Pages.SettingsPage)
            }
        };

        [ObservableProperty]
        private ObservableCollection<MenuItem> _trayMenuItems = new()
        {
            new MenuItem { Header = "Home", Tag = "tray_home" }
        };
    }
}
